Add aria live region to communicate cart changes #744
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why
Screen readers users should be able to interpret how the cart changes as they add/remove items, and update quantities. An aria-live region should be added so the dynamic aspects of the cart can be communicated to screen readers when the user interacts with the line items.
How
aria-hidden
could also be added to the live region after the timeout but certain screen readers weren't announcing changes to the elements contents when it was transitioning fromaria-hidden="true"
toaria-hidden="false"
add to cart
button is clicked, the aria-live region will communicate that the item has been added, and the new cart subtotalNote: there is a known issue in VoiceOver which will cause aria-live regions in an iFrame to be announced twice.
To 🎩
Setup
Item added scenario
add to cart
buttonItem updates
Item removal
Edge case - cart without discounts
options > cart > contents > discounts
to false